package com.wzq.str;

import java.util.HashMap;
import java.util.Map;

public class ChinaNum2 {

    public static void main(String[] args) {
        String s = "十万";
        System.out.println(strToInt(s));
    }

    private static int strToInt1(String str){

        Map<Character,Integer> m = new HashMap<Character, Integer>();
        m.put('一',1);
        m.put('二',2);
        m.put('两',2);
        m.put('三',3);
        m.put('四',4);
        m.put('五',5);
        m.put('六',6);
        m.put('七',7);
        m.put('八',8);
        m.put('九',9);
        m.put('零',0);

        int rst = 0;
        int tu = str.indexOf('千');
        int hu = str.indexOf('百');
        int ten = str.indexOf('十');
        if(tu != -1){
            rst += 1000*Integer.valueOf(m.get(str.charAt(tu-1)));
        }
        if(hu != -1){
            rst += 100*Integer.valueOf(m.get(str.charAt(hu-1)));
        }
        if(ten == 0){
            rst += 10;
        }else if(ten != -1){
            rst += 10*Integer.valueOf(m.get(str.charAt(ten-1)));
        }

        if(tu!=str.length()-1 && hu!=str.length()-1 && ten!=str.length()-1){
            rst += Integer.valueOf(m.get(str.charAt(str.length()-1)));
        }

        return rst;
    }

    private static int strToInt(String str){
        if(str.indexOf('万') == -1){
            return strToInt1(str);
        }else {
            String[] arr = str.split("万");
            if(arr.length == 2){
                return strToInt1(arr[0])*10000+strToInt1(arr[1]);
            }else{
                return strToInt1(arr[0])*10000;
            }

        }
    }

}
